Message passing computational environments operate by having independent processing elements, such as threads or other computational components, pass messages from one element to another during execution. The messages passed between components may contain data and other information that may be consumed by the recipient.